package com.edu.juc.introduction;

public class JUCStart {
    /**
     * 多线程编程步骤
     * 1. 创建资源类，定义属性和操作方法
     * 2. 在资源类中定义操作方法
     * ----- 1. 判断
     * ----- 2. 执行
     * ----- 3. 通知
     * 3. 创建多个线程，调用资源类方法操作资源类
     * 4. 防止虚假唤醒问题
     */
    public static void main(String[] args) {
        new Thread(() -> {
            System.out.println("Thread.currentThread().getName() = " + Thread.currentThread().getName());
            // 判断当前线程是否是守护线程
            System.out.println("Thread.currentThread().isDaemon() = " + Thread.currentThread().isDaemon());
        }, "t1").start();

        System.out.println("Thread.currentThread().getName() = " + Thread.currentThread().getName());
        System.out.println("Thread.currentThread().isDaemon() = " + Thread.currentThread().isDaemon());
        // 默认情况下，创建的线程都是用户线程。
    }
}
